<?php

 # Cargar la configuracion de los comandos...
 include "../config/config.app.php";
 
 # Recoger argumentos...
 $grp_login="";
 if ( ( isset($_REQUEST['grp_login']) ) && ( "" != $_REQUEST['grp_login'] ) ) {
    $grp_login=$_REQUEST['grp_login'];
 }else{
    return exitOnError('Debe especificar el login del usuario');
 }
 $grp_groups="";
 if ( ( isset($_REQUEST['grp_groups']) ) && ( "" != $_REQUEST['grp_groups'] ) ) {
    $grp_groups=$_REQUEST['grp_groups'];
 }

 # Obtener los grupos a los que ya pertenece el usuario...
 $gruposActuales=explode("\n", `$CMD_getGroupsForUser $grp_login `);

 # Ver los grupos en los que debemos dejarlo...
 $gruposParaIncluir=explode("\\", $grp_groups );

 # Ver los que tenemos que añadir...
 for($i=0; $i < (count($gruposParaIncluir) -1); $i++) {
     # Primero comprobar si no estaba ya...
     if (! in_array( $gruposParaIncluir[$i] , $gruposActuales )) {
        $grp=$gruposParaIncluir[$i];
        $basura=`$CMD_addMember2Group $grp_login  $grp `;
     }
 }

 # Ver los que tenemos que quitar...
 for($i=0; $i < (count($gruposActuales)); $i++) {
     # Primero comprobar si no estaba ya...
     if (! in_array( $gruposActuales[$i] , $gruposParaIncluir)) {
        $grp=$gruposActuales[$i];
        $basura=`$CMD_delMember2Group $grp_login  $grp `;
     }
 }


 return exitOnSuccess();

 ###
 ### Funcion para mostrar error
 ###
 function exitOnError($msg) {
    $return_arr = array();
    $return_arr["errors"]=array(
       array(
         'field'=>'message',
         'error'=>"$msg"
       )
    );
    $return_arr["success"]= false;
    echo json_encode($return_arr);
 }
 
 ###
 ### Funcion para salir con exito
 ###
 function exitOnSuccess() {
    $return_arr = array();
    $return_arr["success"]= true;
    echo json_encode($return_arr);
 }
?>
